Embedding information in printed documents continues to be a problem of considerable interest. A plethora of legal and official documents such as IDs, passports and other transactional data are consumed in the printed format. Hence, systems and algorithms for protecting and interacting with hardcopy content are a necessity. Hardcopy information embedding methods can be categorized as data hiding or data encoding approaches. Methods in the former category are essentially (hardcopy) image watermarking schemes and hence must adhere to stringent requirements of maintaining faithfulness to the content of the image to be printed. In the literature, many hardcopy data hiding methods have been proposed. As is well known of watermarking, these methods aim to achieve the best possible trade-off between the often conflicting goals of high embedding rate vs. perceptible distortion to the host image.
Data encoding methods, however, offer greater latitude in embedding distortion and instead focus primarily towards maximizing number of embedded bits per unit area of the printed document. Driver license images, credit cards and other similar documents that are constrained in the amount of physical area to embed in are excellent candidates that can benefit from such methods. Amongst existing prior art and literature, the primary representatives of data encoding methods are one and two dimensional barcodes. The universal product code (UPC) is a well-known example of one dimensional (1-D) barcodes that is widely used for tracking trade items. Though being convenient for price tags and item tracing, UPC cannot be utilized for high capacity applications, e.g. conveying additional information to enhance the quality of the electronically captured images of documents or verify authenticity.
Two dimensional (2-D) barcodes bring a viable solution to printed media security by storing additional information. In personal ID's, driving licenses and passports, this additional information can be a sample voice, a picture or personal information (i.e. data of birth, name of the card holder) which in turn may be used to establish authenticity of the printed document. Although 2-D barcodes have relatively high information storage capacity, they are primarily based upon monochromatic or single ink printing. The extension to color is highly desirable for the benefits it carries in terms of embedding rate per unit area. There are two known color barcode schemes: one recently developed at Microsoft and the other being DataGlyphs. The former method encodes the data as triangles in one of four colors (black, red, green and yellow) where the color is chosen based upon the data. While this allows for each triangle to carry a 4-ary value, as we see subsequently, the flexibility afforded by the spectral difference between the colorants is not fully exploited. DataGlyphs, on the other hand, in their color instantiation operate by simply using the same glyph pattern in a dot-on-dot mode that fundamentally offers the same capacity as a single channel.
Given that barcodes are widely utilized for embedding data in hardcopy format to provide automated identification and tracking capabilities in a number of applications, it is desirable to maximize the number of bits embedded per unit area in order to either reduce the area requirements of the barcodes or to offer an increased payload, which in turn enlarges the class of applications for these barcodes.
Accordingly, what is needed in this art are increasingly sophisticated systems and methods for encoding and decoding data in a color barcode pattern.